package bo

import (
	"insighttracking/query/model"
	"time"
)

type SpuPageBoReq struct {
	Name         string `form:"name"`         // 商品名称
	Status       string `form:"status"`       // 上架状态:1是上架,2是下架
	CategoryId   string `form:"categoryId"`   // 商品分类
	IsWeighed    string `form:"isWeighed"`    // 是否称重,0表示是,1表示否
	SpuType      string `form:"spuType"`      // 商品类型,0表示基础商品,1表示加工商品
	PageSize     int64  `json:"pageSize"`     // 当前条数
	PageNumber   int64  `json:"pageNumber"`   // 当前页数
	EnterpriseID int64  `json:"enterpriseId"` // 关联到enterprise表主键id
}
type SpuBo struct {
	ID                 int64         `json:"id"`                 // 主键id
	Name               string        `json:"name"`               // 商品名称
	SpuType            int64         `json:"spuType"`            // 商品类型,0表示基础商品,1表示加工商品
	CategoryId         int64         `json:"categoryIds"`        // 商品分类,只保存最后一级的
	CategoryName       string        `json:"categoryName"`       // 商品名称
	CategoryIDList     string        `json:"categoryIdList"`     // 分类列表,多个用英文,拼接
	UnitID             int64         `json:"unitId"`             // 商品,关联到unit表主键id
	UnitName           string        `json:"unitName"`           // 商品名称
	IsWeighed          int64         `json:"isWeighed"`          // 是否称重,0表示是,1表示否
	SalesPrice         model.Decimal `json:"salesPrice"`         // 销售价
	Sort               int64         `json:"sort"`               // 排序
	Status             int64         `json:"status"`             // 上架状态:1是上架,2是下架
	ProductImageURL    string        `json:"productImageUrl"`    // 商品图
	SupplierID         int64         `json:"supplierId"`         // 供应商id
	SupplierName       string        `json:"supplierName"`       // 供应商名称
	BrandID            int64         `json:"brandId"`            // 品牌id
	BrandName          string        `json:"brandName"`          // 品牌名称
	LossRate           model.Decimal `json:"lossRate"`           // 损耗率
	PurchasePrice      model.Decimal `json:"purchasePrice"`      // 采购价格
	ProductionLineID   int64         `json:"productionLineId"`   // 生产线关联到production_line主键id
	ProductionLineName string        `json:"productionLineName"` // 生产线名称
	Content            string        `json:"content"`            // 商品详情
	CreatedAt          time.Time     `json:"createdAt"`          // 创建时间
	UpdatedAt          time.Time     `json:"updatedAt"`          // 更新时间
	Spec               string        `json:"spec"`               // 规格
	Period             int64         `json:"period"`             // 保质期
	IsSelfPurchase     int64         `json:"isSelfPurchase"`     // 是否自备采购
}

type BomPageBoReq struct {
	Name           string `json:"name"`
	OrgSpuName     string `json:"org_spu_name"`
	ProductionLine int    `json:"production_line"`
	SpuName        string `json:"spu_name"`
	PageSize       int64  `json:"pageSize"`
	PageNumber     int64  `json:"pageNumber"`
	EnterpriseID   int64  `json:"enterpriseId"`
}

type AssociateResp struct {
	ID       int64  `json:"id"`
	Name     string `json:"name"`
	UnitName string `json:"unitName"`
}
